{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "ae91e878",
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn import datasets\n",
    "from sklearn.neural_network import MLPClassifier\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.model_selection import GridSearchCV\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "d8b31818",
   "metadata": {},
   "outputs": [],
   "source": [
    "digits_dataset = datasets.load_digits()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "e2033097",
   "metadata": {},
   "outputs": [],
   "source": [
    "x = digits_dataset['data']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "d2bf9e7a",
   "metadata": {},
   "outputs": [],
   "source": [
    "y = digits_dataset['target']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "906a7e3c",
   "metadata": {},
   "outputs": [],
   "source": [
    "x_train, x_test, y_train, y_test = train_test_split(x,y,test_size=0.2, stratify=y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "4cbcef0b",
   "metadata": {},
   "outputs": [],
   "source": [
    "clf = MLPClassifier(max_iter=1000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "2d586668",
   "metadata": {},
   "outputs": [],
   "source": [
    "parms = {'hidden_layer_sizes':range(32,128,16),\n",
    "        'activation':('tanh','logistic')}"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "5c9fe78d",
   "metadata": {},
   "outputs": [],
   "source": [
    "clf_cv = GridSearchCV(estimator=clf, param_grid=parms,cv=2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "6cd183f5",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "GridSearchCV(cv=2, estimator=MLPClassifier(max_iter=1000),\n",
       "             param_grid={'activation': ('tanh', 'logistic'),\n",
       "                         'hidden_layer_sizes': range(32, 128, 16)})"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "clf_cv.fit(x_train, y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "2e6da030",
   "metadata": {},
   "outputs": [],
   "source": [
    "activations = [list(items.values())[0] for items in clf_cv.cv_results_[ 'params']]\n",
    "nodes = [list(items.values())[1] for items in clf_cv.cv_results_[ 'params']]\n",
    "acc = clf_cv.cv_results_['split0_test_score']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "094f974e",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.xlabel(\"nodes\")\n",
    "plt.ylabel(\"accuracy\")\n",
    "plt.plot(nodes[:6], acc[:6])\n",
    "plt.plot(nodes[6:], acc[6:])\n",
    "plt.legend(['tanh','logistic'])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "f16a3804",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'activation': 'logistic', 'hidden_layer_sizes': 64}"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "clf_cv.best_params_"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "578ba4c2",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.9805555555555555"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "clf_cv.best_estimator_.score(x_test, y_test)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "44d5c2d7",
   "metadata": {},
   "source": [
    "### The best network with 80 hidden nodes achives best accuracy 0.9805555555555555"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "bf540288",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
